home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-09-13 | 33.1 KB | 1,383 lines |
- SECTION Uno-Pixel,code_c
-
- opt c-
-
- pheight = 200
- pwidth = 40
- psize = pwidth*pheight
- execbase = 4
- openlib = -408
- closelib = -414
-
- **************************************
- fontheight = 16
- **************************************
-
- run: * no doubt or nodout
- move.l $80,otrap0
- move.l #prog,$80
- trap #0
- move.l otrap0,$80
- rts
-
- prog
- movem.l d0-d7/a0-a6,-(sp)
- bsr init_music
- lea $dff000,a5
- bsr init_stuff
- bsr clearsprites
- bsr buildmulus
- bsr setup
- move.l execbase,a6
- clr.l 38(a6)
- lea graphname(pc),a1
- moveq #0,d0
- jsr openlib(a6)
- tst.l d0
- beq quit
- move.l d0,a1
- move.l 38(a1),oldcop
- jsr closelib(a6)
- move #$4000,intena(a5)
- move.l $6c,oldl3
- move intenar(a5),d0
- or #$c000,d0
-
- move d0,saveirq
- move #%001111111111111,intena(a5)
- move.l #newl3,$6c
- move #$80,dmacon(a5)
- clr copjmp1(a5)
- move.l #newcop,cop1lch(a5)
- move #$8080,dmacon(a5)
- clr.w bltcon1(a5)
- move.l #$ffffffff,bltafwm(a5)
- move #$c010,intena(a5)
- wait
- btst #6,$bfe001
- bne.s wait
- quit
- move #$80,dmacon(a5)
- move.l oldcop,cop1lch(a5)
- clr copjmp1(a5)
- move #$4000,intena(a5)
- move.l oldl3,$6c
- blitfinito
- btst #14,dmaconr(a5)
- bne.s blitfinito
- bsr end_music
- move #$80a0,dmacon(a5)
- move saveirq,intena(a5)
- move #$f,dmacon(a5)
- movem.l (sp)+,d0-d7/a0-a6
- rte
-
- newl3
- and #$10,intreqr(a5)
- beq.s out
- movem.l d0-d7/a0-a6,-(sp)
- btst #10,$dff016
- bne.s .skip
- add #1,scrolldelay
- .skip
- move #$400,dmacon(a5)
- bsr mighty_fine
- bsr logoshaker
- bsr play
- move #$8400,dmacon(a5)
- movem.l (sp)+,d0-d7/a0-a6
- out move #$0070,intreq(a5)
- rte
-
- buildmulus
- lea sinetable,a0
- buildloop
- move (a0),d0
- mulu #40,d0
- move d0,(a0)+
- cmp.l #stopsine,a0
- blt.s buildloop
- rts
-
- ****************************************
-
- mighty_fine
- move.l #buff1,d0
- move.l #buff2,d1
- tst.w display_count
- beq.s usea
- exg.l d0,d1
- move #0,display_count
- bra.s skipmove
- usea
- move #1,display_count
- skipmove
- move.l d0,curscreen
- move.l d1,newscreen
- move d0,p6lo
- swap d0
- move d0,p6hi
- cmp.w #0,scrolldelay
- beq.s .skip
- sub #1,scrolldelay
- move.b #1,delay_flag
- bra.s nohorizscroll
- .skip
- move.b #0,delay_flag
- njw btst #14,dmaconr(a5)
- bne.s njw
- move.l #$ffffffff,bltafwm(a5)
- move #0,bltamod(a5)
- move #0,bltdmod(a5) ;ok
- move.l #scrollzone+2,bltapth(a5)
- move.l #scrollzone,bltdpth(a5)
- move #$e9f0,bltcon0(a5)
- move #(fontheight*64)+21,bltsize(a5)
- move #$8400,dmacon(a5)
- nohorizscroll
- btst #14,dmaconr(a5)
- bne.s nohorizscroll
- move #$400,dmacon(a5)
- move #$0dfc,bltcon0(a5)
- move #$ffff,bltafwm(a5)
- move #40,bltamod(a5)
- move #38,bltbmod(a5)
- move #38,bltdmod(a5)
- lea scrollzone+2,a0
- move.l curscreen,a3
- move.l sineptr,a2
- move #$8000,d6 ;Mask in D6.
- moveq #19,d7
- dovert
- move.l a3,a1
- add (a2)+,a1
- move #$8400,dmacon(a5)
-
- .wt
- btst #14,dmaconr(a5)
- bne.s .wt
- move #$400,dmacon(a5)
- move.l a0,bltapth(a5)
- move.l a1,bltbpth(a5)
- move.l a1,bltdpth(a5)
- move d6,bltafwm(a5)
- move #(fontheight*64)+1,bltsize(a5)
- oksin1
- ror #1,d6
- bpl.s dovert
- lea 2(a0),a0
- lea 2(a3),a3
- dbra d7,dovert
- cmp.b #0,delay_flag
- bne.s nochar
- add #2,pixelcount
- and #$f,pixelcount
- bne.s nochar
- move.l textptr,a0
- cmp.b #$fe-32,(a0)
- bne.s skipo
- move #400,scrolldelay
- add.l #1,a0
- move.l a0,textptr
- skipo
- cmp.b #$ff,(a0)
- bne.s notwrap
- move.l #text,a0
- notwrap
- move.b (a0)+,d0
- and #$ff,d0
- lsl #1,d0
- lea font,a1
- lea (a1,d0),a1
- move.l #scrollzone,a2
- moveq #fontheight-1,d7
- cloop move (a1),(a2)
- lea 120(a1),a1 ;font layed out as straight line
- lea 42(a2),a2
- dbra d7,cloop
- move.l a0,textptr
- nochar btst #14,dmaconr(a5)
- bne.s nochar
- move #$100,bltcon0(a5)
- move.l newscreen,bltdpth(a5)
- move #0,bltamod(a5)
- move #0,bltdmod(a5)
- move #(187*64)+20,bltsize(a5)
- add.l #2,sineptr
- cmp.l #endsine,sineptr
- blt.s exit
- sub.l #endsine-sinetable,sineptr
- exit rts
-
- ***************************************
- graphname
- dc.b 'graphics.library',0
- even
- gbase dc.l 0
- oldcop dc.l 0
- oldl3 dc.l 0
- saveirq dc.w 0
- display_count dc.w 0
- otrap0 dc.l 0
- sineptr dc.l sinetable
- scrolldelay
- dc.w 0
- delay_flag dc.b 0
- even
- pixelcount
- dc.w 0
-
- setup
- move.l #text,a0
- loopu
- move.b (a0),d0
- sub.b #32,d0
- move.b d0,(a0)+
- cmp.b #$ff,(a0)
- bne.s loopu
- rts
-
- sinetable
- dc.w 0,0,0,0,0,0,0,1,1,1,1,2,2,2,3
- dc.w 3,3,4,4,5,5,6,6,7,7,8,9,9,10,11
- dc.w 11,12,13,14,15,15,16,17,18,19,20,21,22,23,24
- dc.w 25,26,27,28,29,30,32,33,34,35,36,37,39,40,41
- dc.w 42,44,45,46,48,49,50,52,53,55,56,57,59,60,62
- dc.w 63,64,66,67,69,70,72,73,75,76,78,79,81,82,84
- dc.w 85,86,88,89,91,92,94,95,97,98,100,101,103,104,106
- dc.w 107,108,110,111,113,114,115,117,118,120,121,122,124,125,126
- dc.w 128,129,130,131,133,134,135,136,137,138,140,141,142,143,144
- dc.w 145,146,147,148,149,150,151,152,153,154,155,155,156,157,158
- dc.w 159,159,160,161,161,162,163,163,164,164,165,165,166,166,167
- dc.w 167,167,168,168,168,169,169,169,169,170,170,170,170,170,170
- dc.w 170,170,170,170,170,170,170,169,169,169,169,168,168,168,167
- dc.w 167,167,166,166,165,165,164,164,163,163,162,161,161,160,159
- dc.w 159,158,157,156,155,155,154,153,152,151,150,149,148,147,146
- dc.w 145,144,143,142,141,140,138,137,136,135,134,133,131,130,129
- dc.w 128,126,125,124,122,121,120,118,117,115,114,113,111,110,108
- dc.w 107,106,104,103,101,100,98,97,95,94,92,91,89,88,86
- dc.w 85,84,82,81,79,78,76,75,73,72,70,69,67,66,64
- dc.w 63,62,60,59,57,56,55,53,52,50,49,48,46,45,44
- dc.w 43,41,40,39,37,36,35,34,33,32,30,29,28,27,26
- dc.w 25,24,23,22,21,20,19,18,17,16,15,15,14,13,12
- dc.w 11,11,10,9,9,8,7,7,6,6,5,5,4,4,3
- dc.w 3,3,2,2,2,1,1,1,1,0,0,0,0,0,0
- dc.w 0,0,0,0
- endsine
- dc.w 0,0,0,0,0,0,0,1,1,1,1,2,2,2,3
- dc.w 3,3,4,4,5,5,6,6,7,7,8,9,9,10,11
- dc.w 11,12,13,14,15,15,16,17,18,19,20,21,22,23,24
- dc.w 25,26,27,28,29,30,32,33,34,35,36,37,39,40,41
- dc.w 42,44,45,46,48,49,50,52,53,55,56,57,59,60,62
- dc.w 63,64,66,67,69,70,72,73,75,76,78,79,81,82,84
- dc.w 85,86,88,89,91,92,94,95,97,98,100,101,103,104,106
- dc.w 107,108,110,111,113,114,115,117,118,120,121,122,124,125,126
- dc.w 128,129,130,131,133,134,135,136,137,138,140,141,142,143,144
- dc.w 145,146,147,148,149,150,151,152,153,154,155,155,156,157,158
- dc.w 159,159,160,161,161,162,163,163,164,164,165,165,166,166,167
- dc.w 167,167,168,168,168,169,169,169,169,170,170,170,170,170,170
- dc.w 170,170,170,170,170,170,170,169,169,169,169,168,168,168,167
- dc.w 167,167,166,166,165,165,164,164,163,163,162,161,161,160,159
- dc.w 159,158,157,156,155,155,154,153,152,151,150,149,148,147,146
- dc.w 145,144,143,142,141,140,138,137,136,135,134,133,131,130,129
- dc.w 128,126,125,124,122,121,120,118,117,115,114,113,111,110,108
- dc.w 107,106,104,103,101,100,98,97,95,94,92,91,89,88,86
- dc.w 85,84,82,81,79,78,76,75,73,72,70,69,67,66,64
- dc.w 63,62,60,59,57,56,55,53,52,50,49,48,46,45,44
- dc.w 43,41,40,39,37,36,35,34,33,32,30,29,28,27,26
- dc.w 25,24,23,22,21,20,19,18,17,16,15,15,14,13,12
- dc.w 11,11,10,9,9,8,7,7,6,6,5,5,4,4,3
- dc.w 3,3,2,2,2,1,1,1,1,0,0,0,0,0,0
- dc.w 0,0,0,0
- stopsine
- ***********************************************
- init_stuff
- move.l #piccy,d0
- move d0,p1lo
- swap d0
- move d0,p1hi
- swap d0
- add.l #psize,d0
- move d0,p2lo
- swap d0
- move d0,p2hi
- swap d0
- add.l #psize,d0
- move d0,p3lo
- swap d0
- move d0,p3hi
- swap d0
- add.l #psize,d0
- move d0,p4lo
- swap d0
- move d0,p4hi
- swap d0
- add.l #psize,d0
- move d0,p5lo
- swap d0
- move d0,p5hi
- move.l #buff1,d0
- move d0,p6lo
- swap d0
- move d0,p6hi
- move.l #logo,d0
- move d0,l1lo
- swap d0
- move d0,l1hi
- swap d0
- add.l #(51*78),d0
- move d0,l2lo
- swap d0
- move d0,l2hi
- swap d0
- add.l #(51*78),d0
- move d0,l3lo
- swap d0
- move d0,l3hi
- rts
-
- clearsprites
- lea $dff144,a0
- moveq #7,d7
- loopydo
- clr.l (a0)
- lea 4(a0),a0
- dbra d7,loopydo
- rts
-
- text DC.B " INNER CITY ",$FE
- DC.B " PRESENTS ",$FE
- DC.B " A NEW CRACK ",$FE
- DC.B " CODED IN 1990 BY "
- DC.B " HOTWIRE/INNER CITY ",$FE
- DC.B "MEGA-GREETS GOTO MOSES AND DR.DUBBS OF MODESTY "
- DC.B "FOR BEING SUCH COOL DUDES .... NOW THE CREDITS OF "
- DC.B "THE INTRO .... "
- DC.B " CODING :"
- DC.B " HOTWIRE/INNER CITY ",$FE
- DC.B " - GRAPHICS : "
- DC.B " POD OF INNER CITY ",$FE
- DC.B "- MUSIC : "
- DC.B "UNCLE TOM & ZIPHOID ",$FE
- DC.B " AND IS TAKEN FROM "
- DC.B "RAZOR 1911+S MUSIC DISK CALLED #DELICATE SOUNDS# "
- DC.B "RIPPED BY HOTWIRE ..... "
- DC.B " "
- DC.B "GREETINGS GOTO ALL "
- dc.b " INNER CITY MEMBERS ",$FE
- dc.b "- ALSO A SPECIAL "
- DC.B "GREET GOES TO "
- dc.b " JROK+90 OF MAYHEM ",$FE
- dc.b "- "
- dc.b "A.D.S. OF INNER CITY",$FE
- DC.B " - "
- DC.B "Q.E.D. OF INNER CITY",$FE
- dc.b " - "
- DC.B " MYSTIK OF EXTREME - COUNT ZERO AND RASTER OF "
- DC.B "ANTHROX - DR.C OF RED SECTOR - VANDAL AND STATIC "
- DC.B "OF PARADOX - ICEMAN OF MODESTY - FIREFLY,ZARCHY,LAMESLUG"
- DC.B " AND BANDASNATCH OF T.H.R. - POWERCUT OF MAYHEM - ZEUS OF "
- DC.B "PUBLIC ENEMIES - DR.ZERONINE OF QUADLITE - "
- DC.B "I AM SORRY IF I MISSED ANYBODY OUT , SEE MY SINE IS MELLOW "
- DC.B "DEMO FOR THE FULL GREETINGS LIST ..... PRESS THE LEFT MOUSE "
- DC.B "BUTTON PLEASE ..... IF YOU WANT TO CONTACT ME (HOTWIRE) FOR "
- DC.B "CODING OR DEMO-SWAPPING (ONLY) AND WISH TO DO IT BEFORE "
- DC.B "10:00 PM THEN PLEASE PHONE ENGLAND ON "
- DC.B " 0670 - 717513 ",$FE
- DC.B " SCROLLTEXT WILL WRAP IN THE COUNT DOWN 10 9 8 7 6 5 4 "
- DC.B "3 2 1 0 "
- DC.B $FF
- even
-
- textptr dc.l text
-
- logoshaker
- move.l logosineptr,a0
- cmp.l #endlogosine,a0
- blt.s .skip
- move.l #logosine,logosineptr
- move.l logosineptr,a0
- .skip
- move (a0),d0
- add #151,d0
- move d0,d1
- asr #3,d0
- move d0,d2
- and #$f,d1
- eor #$f,d1
- move d1,d3
- lsl #4,d3
- or d3,d1
- move d1,fineshift
- add.l #logo-2,d2 ;d2 contains byte pos; yippee
- move d2,l1lo
- swap d2
- move d2,l1hi
- swap d2
- add #(51*78),d2
- move d2,l2lo
- swap d2
- move d2,l2hi
- swap d2
- add #(51*78),d2
- move d2,l3lo
- swap d2
- move d2,l3hi
- add.l #10,logosineptr
- rts
-
- ********************************************
-
- logosine
- dc.w 0, 3, 5, 8, 11, 13, 16, 18, 21, 24, 26, 29
- dc.w 31, 34, 37, 39, 42, 44, 47, 49, 52, 54, 57, 59
- dc.w 61, 64, 66, 69, 71, 73, 75, 78, 80, 82, 84, 87
- dc.w 89, 91, 93, 95, 97, 99,101,103,105,107,109,110
- dc.w 112,114,116,117,119,121,122,124,125,127,128,129
- dc.w 131,132,133,135,136,137,138,139,140,141,142,143
- dc.w 144,144,145,146,147,147,148,148,149,149,150,150
- dc.w 150,150,151,151,151,151,151,151,151,151,151,150
- dc.w 150,150,150,149,149,148,148,147,147,146,145,144
- dc.w 144,143,142,141,140,139,138,137,136,135,133,132
- dc.w 131,129,128,127,125,124,122,121,119,117,116,114
- dc.w 112,110,109,107,105,103,101, 99, 97, 95, 93, 91
- dc.w 89, 87, 84, 82, 80, 78, 76, 73, 71, 69, 66, 64
- dc.w 61, 59, 57, 54, 52, 49, 47, 44, 42, 39, 37, 34
- dc.w 31, 29, 26, 24, 21, 18, 16, 13, 11, 8, 5, 3
- dc.w 0, -2, -5, -7,-10,-13,-15,-18,-21,-23,-26,-28
- dc.w -31,-33,-36,-39,-41,-44,-46,-49,-51,-54,-56,-59
- dc.w -61,-63,-66,-68,-70,-73,-75,-77,-80,-82,-84,-86
- dc.w -88,-90,-92,-95,-97,-99,-101,-102,-104,-106,-108,-110
- dc.w -112,-113,-115,-117,-118,-120,-122,-123,-125,-126,-128,-129
- dc.w -130,-132,-133,-134,-135,-136,-137,-138,-140,-140,-141,-142
- dc.w -143,-144,-145,-145,-146,-147,-147,-148,-148,-149,-149,-149
- dc.w -150,-150,-150,-150,-150,-150,-151,-150,-150,-150,-150,-150
- dc.w -150,-149,-149,-149,-148,-148,-147,-147,-146,-145,-145,-144
- dc.w -143,-142,-141,-140,-140,-138,-137,-136,-135,-134,-133,-132
- dc.w -130,-129,-128,-126,-125,-123,-122,-120,-118,-117,-115,-113
- dc.w -112,-110,-108,-106,-104,-102,-101,-99,-97,-95,-92,-90
- dc.w -88,-86,-84,-82,-80,-77,-75,-73,-70,-68,-66,-63
- dc.w -61,-59,-56,-54,-51,-49,-46,-44,-41,-39,-36,-33
- dc.w -31,-28,-26,-23,-21,-18,-15,-13,-10, -7, -5, -2
- endlogosine
- logosineptr
- dc.l logosine
- curscreen
- dc.l 0
- newscreen
- dc.l 0
- buff1
- dcb.b 40*200,0
- buff2
- dcb.b 40*200,0
- scrollzone
- dcb.b (16+1)*42,0
- mulutable
- dcb.w 171,0
- font
- incbin df2:bitmaps/1911Font.bmap
- *************COPPERlist***********************
-
- newcop dc.w dmacon,$0020
- dc.w diwstrt,$2c81
- dc.w diwstop,$2cc1
- dc.w ddfstrt,$0038
- dc.w ddfstop,$00d0
- dc.w bplcon0,$6200
- dc.w bplcon1,$0000
- dc.w bpl1mod,$0000
- dc.w bpl2mod,$0000
- dc.w $0180,$0000,$0182,$07ff,$0184,$0444,$0186,$0fff
- dc.w $0188,$0f00,$018a,$0aaa,$018c,$00f0,$018e,$0e72
- dc.w $0190,$006a,$0192,$0405,$0194,$0888,$0196,$0666
- dc.w $0198,$0555,$019a,$0333,$019c,$0222,$019e,$0000
- dc.w $01a0,$0fff,$01a2,$0eee,$01a4,$0ddd,$01a6,$0ddd
- dc.w $01a8,$0ccc,$01aa,$0bbb,$01ac,$0aaa,$01ae,$0999
- dc.w $01b0,$0999,$01b2,$0888,$01b4,$0777,$01b6,$0666
- dc.w $01b8,$0666,$01ba,$0555,$01bc,$0444,$01be,$0620
- dc.w $e0
- p1hi dc.w 0
- dc.w $e2
- p1lo dc.w 0
- dc.w $e4
- p2hi dc.w 0
- dc.w $e6
- p2lo dc.w 0
- dc.w $e8
- p3hi dc.w 0
- dc.w $ea
- p3lo dc.w 0
- dc.w $ec
- p4hi dc.w 0
- dc.w $ee
- p4lo dc.w 0
- dc.w $f0
- p5hi dc.w 0
- dc.w $f2
- p5lo dc.w 0
- dc.w $f4
- p6hi dc.w 0
- dc.w $f6
- p6lo dc.w 0
- dc.w $1001,$fffe
- dc.w intreq,$8010
- dc.w $f001,$fffe
- dc.w bplcon0,$0200
- dc.w $f501,$fffe ;Logo Start
- dc.w bplcon0,$3200
- dc.w $e0
- l1hi dc.w 0
- dc.w $e2
- l1lo dc.w 0
- dc.w $e4
- l2hi dc.w 0
- dc.w $e6
- l2lo dc.w 0
- dc.w $e8
- l3hi dc.w 0
- dc.w $ea
- l3lo dc.w 0
- dc.w bpl1mod,32
- dc.w bpl2mod,32
- dc.w diwstrt,$2c81
- dc.w diwstop,$2cc1
- dc.w ddfstrt,$0028
- dc.w ddfstop,$00d8
- dc.w bplcon1,$0000
- dc.w $0180,$0000,$0182,$0fea,$0184,$0db7,$0186,$0a84
- dc.w $0188,$0952,$018a,$0631,$018c,$0731,$018e,$0003
- dc.w bplcon1
- fineshift
- dc.w 0
- dc.w $f601,$fffe,$18e,$0003
- dc.w $f701,$fffe,$18e,$0003
- dc.w $f801,$fffe,$18e,$0003
- dc.w $f901,$fffe,$18e,$0003
- dc.w $fa01,$fffe,$18e,$0003
- dc.w $fc01,$fffe,$18e,$0003
- dc.w $fd01,$fffe,$18e,$0003
- dc.w $fe01,$fffe,$18e,$0003
- dc.w $ff01,$fffe,$18e,$0003
- dc.w $ffe1,$fffe
- dc.w $0001,$fffe,$18e,$0003
- dc.w $0101,$fffe,$18e,$0003
- dc.w $0201,$fffe,$18e,$0003
- dc.w $0301,$fffe,$18e,$0003
- dc.w $0401,$fffe,$18e,$0003
- dc.w $0501,$fffe,$18e,$0003
- dc.w $0601,$fffe,$18e,$0003
- dc.w $0701,$fffe,$18e,$0003
- dc.w $0801,$fffe,$18e,$0004
- dc.w $0901,$fffe,$18e,$0005
- dc.w $0a01,$fffe,$18e,$0006
- dc.w $0b01,$fffe,$18e,$0007
- dc.w $0c01,$fffe,$18e,$0008
- dc.w $0d01,$fffe,$18e,$0009
- dc.w $0e01,$fffe,$18e,$000a
- dc.w $0f01,$fffe,$18e,$000b
- dc.w $1001,$fffe,$18e,$000c
- dc.w $1101,$fffe,$18e,$000d
- dc.w $1201,$fffe,$18e,$000e
- dc.w $1301,$fffe,$18e,$000f
- dc.w $1401,$fffe,$18e,$001f
- dc.w $1501,$fffe,$18e,$002f
- dc.w $1601,$fffe,$18e,$003f
- dc.w $1701,$fffe,$18e,$004f
- dc.w $1801,$fffe,$18e,$005f
- dc.w $1a01,$fffe,$18e,$006f
- dc.w $1b01,$fffe,$18e,$007f
- dc.w $1c01,$fffe,$18e,$008f
- dc.w $1d01,$fffe,$18e,$009f
- dc.w $1e01,$fffe,$18e,$00af
- dc.w $1f01,$fffe,$18e,$00bf
- dc.w $2001,$fffe,$18e,$00cf
- dc.w $2101,$fffe,$18e,$00df
- dc.w $2201,$fffe,$18e,$00ef
- dc.w $2301,$fffe,$18e,$00ff
- dc.w $2401,$fffe,$18e,$01ff
- dc.w $2501,$fffe,$18e,$02ff
- dc.w $2601,$fffe,$18e,$03ff
- dc.w $2701,$fffe,$18e,$04ff
- dc.w $2801,$fffe
- dc.w bplcon0,$0200
- dc.l $ffff,$fffe
-
- PLAY_MUSIC:
- bra.W PLAY
-
- END_MUSIC:
- clr.w onoff
- clr.l $dff0a6
- clr.l $dff0b6
- clr.l $dff0c6
- clr.l $dff0d6
- move.w #$000f,$dff096
- bclr #1,$bfe001
- rts
-
- INIT_MUSIC:
- move.w #1,onoff
- bset #1,$bfe001
- lea MODULE,a0
- lea 100(a0),a1
- move.l a1,SEQpoint
- move.l a0,a1
- add.l 8(a0),a1
- move.l a1,PATpoint
- move.l a0,a1
- add.l 16(a0),a1
- move.l a1,FRQpoint
- move.l a0,a1
- add.l 24(a0),a1
- move.l a1,VOLpoint
- move.l 4(a0),d0
- divu #13,d0
-
- lea 40(a0),a1
- lea SOUNDINFO+4(pc),a2
- moveq #10-1,d1
- initloop:
- move.w (a1)+,(a2)+
- move.l (a1)+,(a2)+
- addq.w #4,a2
- dbf d1,initloop
- moveq #0,d2
- move.l a0,d1
- add.l 32(a0),d1
- sub.l #WAVEFORMS,d1
- lea SOUNDINFO(pc),a0
- move.l d1,(a0)+
- moveq #9-1,d3
- initloop1:
- move.w (a0),d2
- add.l d2,d1
- add.l d2,d1
- addq.w #6,a0
- move.l d1,(a0)+
- dbf d3,initloop1
-
- move.l SEQpoint(pc),a0
- moveq #0,d2
- move.b 12(a0),d2 ;Get replay speed
- bne.s speedok
- move.b #3,d2 ;Set default speed
- speedok:
- move.w d2,respcnt ;Init repspeed counter
- move.w d2,repspd
- INIT2:
- clr.w audtemp
- move.w #$000f,$dff096 ;Disable audio DMA
- move.w #$0780,$dff09a ;Disable Audio IRQ
- moveq #0,d7
- mulu #13,d0
- moveq #4-1,d6 ;Number of soundchannels-1
- lea V1data(pc),a0 ;Point to 1st voice data area
- lea SILENT(pc),a1
- lea o4a0c8(pc),a2
- initloop2:
- move.l a1,10(a0)
- move.l a1,18(a0)
- clr.l 14(a0)
- clr.b 45(a0)
- clr.b 47(a0)
- clr.w 8(a0)
- clr.l 48(a0)
- move.b #$01,23(a0)
- move.b #$01,24(a0)
- clr.b 25(a0)
- clr.l 26(a0)
- clr.w 30(a0)
- moveq #$00,d3
- move.w (a2)+,d1
- move.w (a2)+,d3
- divu #$0003,d3
- move.b d3,32(a0)
- mulu #$0003,d3
- andi.l #$00ff,d3
- andi.l #$00ff,d1
- addi.l #$dff0a0,d1
- move.l d1,a6
- move.l #$0000,(a6)
- move.w #$0100,4(a6)
- move.w #$0000,6(a6)
- move.w #$0000,8(a6)
- move.l d1,60(a0)
- clr.w 64(a0)
- move.l SEQpoint(pc),(a0)
- move.l SEQpoint(pc),52(a0)
- add.l d0,52(a0)
- add.l d3,52(a0)
- add.l d7,(a0)
- add.l d3,(a0)
- move.w #$000d,6(a0)
- move.l (a0),a3
- move.b (a3),d1
- andi.l #$00ff,d1
- lsl.w #6,d1
- move.l PATpoint(pc),a4
- adda.w d1,a4
- move.l a4,34(a0)
- clr.l 38(a0)
- move.b #$01,33(a0)
- move.b #$02,42(a0)
- move.b 1(a3),44(a0)
- move.b 2(a3),22(a0)
- clr.b 43(a0)
- clr.b 45(a0)
- clr.w 56(a0)
- adda.w #$004a,a0 ;Point to next voice's data area
- dbf d6,initloop2
- rts
-
-
- PLAY:
- lea pervol(pc),a6
- tst.w onoff
- bne.s music_on
- rts
- music_on:
- subq.w #1,respcnt ;Decrease replayspeed counter
- bne.s nonewnote
- move.w repspd(pc),respcnt ;Restore replayspeed counter
- lea V1data(pc),a0 ;Point to voice1 data area
- bsr.W NEW_NOTE
- lea V2data(pc),a0 ;Point to voice2 data area
- bsr.W NEW_NOTE
- lea V3data(pc),a0 ;Point to voice3 data area
- bsr.W NEW_NOTE
- lea V4data(pc),a0 ;Point to voice4 data area
- bsr.W NEW_NOTE
- nonewnote:
- clr.w audtemp
- lea V1data(pc),a0
- bsr.W EFFECTS
- move.w d0,(a6)+
- move.w d1,(a6)+
- lea V2data(pc),a0
- bsr.W EFFECTS
- move.w d0,(a6)+
- move.w d1,(a6)+
- lea V3data(pc),a0
- bsr.W EFFECTS
- move.w d0,(a6)+
- move.w d1,(a6)+
- lea V4data(pc),a0
- bsr.W EFFECTS
- move.w d0,(a6)+
- move.w d1,(a6)+
- lea pervol(pc),a6
- move.w audtemp(pc),d0
- ori.w #$8000,d0 ;Set/clr bit = 1
- move.w d0,-(sp)
- moveq #0,d1
- move.l start1(pc),d2 ;Get samplepointers
- move.w offset1(pc),d1 ;Get offset
- add.l d1,d2 ;Add offset
- move.l start2(pc),d3
- move.w offset2(pc),d1
- add.l d1,d3
- move.l start3(pc),d4
- move.w offset3(pc),d1
- add.l d1,d4
- move.l start4(pc),d5
- move.w offset4(pc),d1
- add.l d1,d5
- move.w ssize1(pc),d0 ;Get sound lengths
- move.w ssize2(pc),d1
- move.w ssize3(pc),d6
- move.w ssize4(pc),d7
- move.w (sp)+,$dff096 ;Enable audio DMA
- chan1:
- lea V1data(pc),a0
- tst.w 72(a0)
- beq.W chan2
- subq.w #1,72(a0)
- cmpi.w #1,72(a0)
- bne.s chan2
- clr.w 72(a0)
- move.l d2,$dff0a0 ;Set soundstart
- move.w d0,$dff0a4 ;Set soundlength
- chan2:
- lea V2data(pc),a0
- tst.w 72(a0)
- beq.s chan3
- subq.w #1,72(a0)
- cmpi.w #1,72(a0)
- bne.s chan3
- clr.w 72(a0)
- move.l d3,$dff0b0
- move.w d1,$dff0b4
- chan3:
- lea V3data(pc),a0
- tst.w 72(a0)
- beq.s chan4
- subq.w #1,72(a0)
- cmpi.w #1,72(a0)
- bne.s chan4
- clr.w 72(a0)
- move.l d4,$dff0c0
- move.w d6,$dff0c4
- chan4:
- lea V4data(pc),a0
- tst.w 72(a0)
- beq.s setpervol
- subq.w #1,72(a0)
- cmpi.w #1,72(a0)
- bne.s setpervol
- clr.w 72(a0)
- move.l d5,$dff0d0
- move.w d7,$dff0d4
- setpervol:
- lea $dff0a6,a5
- move.w (a6)+,(a5) ;Set period
- move.w (a6)+,2(a5) ;Set volume
- move.w (a6)+,16(a5)
- move.w (a6)+,18(a5)
- move.w (a6)+,32(a5)
- move.w (a6)+,34(a5)
- move.w (a6)+,48(a5)
- move.w (a6)+,50(a5)
- rts
-
- NEW_NOTE:
- moveq #0,d5
- move.l 34(a0),a1
- adda.w 40(a0),a1
- cmp.w #64,40(a0)
- bne.W samepat
- move.l (a0),a2
- adda.w 6(a0),a2 ;Point to next sequence row
- cmpa.l 52(a0),a2 ;Is it the end?
- bne.s notend
- move.w d5,6(a0) ;yes!
- move.l (a0),a2 ;Point to first sequence
- notend:
- moveq #0,d1
- addq.b #1,spdtemp
- cmpi.b #4,spdtemp
- bne.s nonewspd
- move.b d5,spdtemp
- ; move.b -1(a1),d1 ;Get new replay speed
- ; beq.s nonewspd
- ; move.w d1,respcnt ;store in counter
- ; move.w d1,repspd
- nonewspd:
- move.b (a2),d1 ;Pattern to play
- move.b 1(a2),44(a0) ;Transpose value
- move.b 2(a2),22(a0) ;Soundtranspose value
-
- move.w d5,40(a0)
- lsl.w #6,d1
- add.l PATpoint(pc),d1 ;Get pattern pointer
- move.l d1,34(a0)
- addi.w #$000d,6(a0)
- move.l d1,a1
- samepat:
- move.b 1(a1),d1 ;Get info byte
- move.b (a1)+,d0 ;Get note
- bne.s ww1
- andi.w #%11000000,d1
- beq.s noport
- bra.s ww11
- ww1:
- move.w d5,56(a0)
- ww11:
- move.b d5,47(a0)
- move.b (a1),31(a0)
-
- ;31(a0) = PORTAMENTO/INSTR. info
- ;Bit 7 = portamento on
- ;Bit 6 = portamento off
- ;Bit 5-0 = instrument number
- ;47(a0) = portamento value
- ;Bit 7-5 = always zero
- ;Bit 4 = up/down
- ;Bit 3-0 = value
- t_porton:
- btst #7,d1
- beq.s noport
- move.b 2(a1),47(a0)
- noport:
- andi.w #$007f,d0
- beq.W nextnote
- move.b d0,8(a0)
- move.b (a1),9(a0)
- move.b 32(a0),d2
- moveq #0,d3
- bset d2,d3
- or.w d3,audtemp
- move.w d3,$dff096
- move.b (a1),d1
- andi.w #$003f,d1 ;Max 64 instruments
- add.b 22(a0),d1
- move.l VOLpoint(pc),a2
- lsl.w #6,d1
- adda.w d1,a2
- move.w d5,16(a0)
- move.b (a2),23(a0)
- move.b (a2)+,24(a0)
- move.b (a2)+,d1
- andi.w #$00ff,d1
- move.b (a2)+,27(a0)
- move.b #$40,46(a0)
- move.b (a2)+,d0
- move.b d0,28(a0)
- move.b d0,29(a0)
- move.b (a2)+,30(a0)
- move.l a2,10(a0)
- move.l FRQpoint(pc),a2
- lsl.w #6,d1
- adda.w d1,a2
- move.l a2,18(a0)
- move.w d5,50(a0)
- move.b d5,26(a0)
- move.b d5,25(a0)
- nextnote:
- addq.w #2,40(a0)
- rts
-
- EFFECTS:
- moveq #0,d7
- testsustain:
- tst.b 26(a0) ;Is sustain counter = 0
- beq.s sustzero
- subq.b #1,26(a0) ;if no, decrease counter
- bra.W VOLUfx
- sustzero: ;Next part of effect sequence
- move.l 18(a0),a1 ;can be executed now.
- adda.w 50(a0),a1
- testeffects:
- cmpi.b #$e1,(a1) ;E1 = end of FREQseq sequence
- beq.W VOLUfx
- cmpi.b #$e0,(a1) ;E0 = loop to other part of sequence
- bne.s testnewsound
- move.b 1(a1),d0 ;loop to start of sequence + 1(a1)
- andi.w #$003f,d0
- move.w d0,50(a0)
- move.l 18(a0),a1
- adda.w d0,a1
- testnewsound:
- cmpi.b #$e2,(a1) ;E2 = set waveform
- bne.s o49c64
- moveq #0,d0
- moveq #0,d1
- move.b 32(a0),d1
- bset d1,d0
- or.w d0,audtemp
- move.w d0,$dff096
- move.b 1(a1),d0
- andi.w #$00ff,d0
- lea SOUNDINFO(pc),a4
- add.w d0,d0
- move.w d0,d1
- add.w d1,d1
- add.w d1,d1
- add.w d1,d0
- adda.w d0,a4
- move.l 60(a0),a3
- move.l (a4),d1
- add.l #WAVEFORMS,d1
- move.l d1,(a3)
- move.l d1,68(a0)
- move.w 4(a4),4(a3)
- move.l 6(a4),64(a0)
- swap d1
- move.w #$0003,72(a0)
- tst.w d1
- bne.s o49c52
- move.w #$0002,72(a0)
- o49c52:
- clr.w 16(a0)
- move.b #$01,23(a0)
- addq.w #2,50(a0)
- bra.W o49d02
- o49c64:
- cmpi.b #$e4,(a1)
- bne.s testpatjmp
- move.b 1(a1),d0
- andi.w #$00ff,d0
- lea SOUNDINFO(pc),a4
- add.w d0,d0
- move.w d0,d1
- add.w d1,d1
- add.w d1,d1
- add.w d1,d0
- adda.w d0,a4
- move.l 60(a0),a3
- move.l (a4),d1
- add.l #WAVEFORMS,d1
- move.l d1,(a3)
- move.l d1,68(a0)
- move.w 4(a4),4(a3)
- move.l 6(a4),64(a0)
-
- swap d1
- move.w #$0003,72(a0)
- tst.w d1
- bne.s o49cae
- move.w #$0002,72(a0)
- o49cae:
- addq.w #2,50(a0)
- bra.s o49d02
- testpatjmp:
- cmpi.b #$e7,(a1)
- bne.s testnewsustain
- move.b 1(a1),d0
- andi.w #$00ff,d0
- lsl.w #6,d0
- move.l FRQpoint(pc),a1
- adda.w d0,a1
- move.l a1,18(a0)
- move.w d7,50(a0)
- bra.W testeffects
- testnewsustain:
- cmpi.b #$e8,(a1) ;E8 = set sustain time
- bne.s o49cea
- move.b 1(a1),26(a0)
- addq.w #2,50(a0)
- bra.W testsustain
- o49cea:
- cmpi.b #$e3,(a1)
- bne.s o49d02
- addq.w #3,50(a0)
- move.b 1(a1),27(a0)
- move.b 2(a1),28(a0)
- o49d02:
- move.l 18(a0),a1
- adda.w 50(a0),a1
- move.b (a1),43(a0)
- addq.w #1,50(a0)
- VOLUfx:
- tst.b 25(a0)
- beq.s o49d1e
- subq.b #1,25(a0)
- bra.s o49d70
- o49d1e:
- subq.b #1,23(a0)
- bne.s o49d70
- move.b 24(a0),23(a0)
- o49d2a:
- move.l 10(a0),a1
- adda.w 16(a0),a1
- move.b (a1),d0
- cmpi.b #$e8,d0
- bne.s o49d4a
- addq.w #2,16(a0)
- move.b 1(a1),25(a0)
- bra.s VOLUfx
- o49d4a:
- cmpi.b #$e1,d0
- beq.s o49d70
- cmpi.b #$e0,d0
- bne.s o49d68
- move.b 1(a1),d0
- andi.l #$003f,d0
- subq.b #5,d0
- move.w d0,16(a0)
- bra.s o49d2a
- o49d68:
- move.b (a1),45(a0)
- addq.w #1,16(a0)
- o49d70:
- move.b 43(a0),d0
- bmi.s o49d7e
- add.b 8(a0),d0
- add.b 44(a0),d0
- o49d7e:
- andi.w #$007f,d0
- lea PERIODS(pc),a1
- add.w d0,d0
- move.w d0,d1
- adda.w d0,a1
- move.w (a1),d0
- move.b 46(a0),d7
- tst.b 30(a0)
- beq.s o49d9e
- subq.b #1,30(a0)
-
- bra.s o49df4
- o49d9e:
- move.b d1,d5
- move.b 28(a0),d4
- add.b d4,d4
- move.b 29(a0),d1
- tst.b d7
- bpl.s o49db4
- btst #0,d7
- bne.s o49dda
- o49db4:
- btst #5,d7
- bne.s o49dc8
- sub.b 27(a0),d1
- bcc.s o49dd6
- bset #5,d7
- moveq #0,d1
- bra.s o49dd6
- o49dc8:
- add.b 27(a0),d1
- cmp.b d4,d1
- bcs.s o49dd6
- bclr #5,d7
- move.b d4,d1
- o49dd6:
- move.b d1,29(a0)
- o49dda:
- lsr.b #1,d4
- sub.b d4,d1
- bcc.s o49de4
- subi.w #$0100,d1
- o49de4:
- addi.b #$a0,d5
- bcs.s o49df2
- o49dea:
- add.w d1,d1
- addi.b #$18,d5
- bcc.s o49dea
- o49df2:
- add.w d1,d0
- o49df4:
- eori.b #$01,d7
- move.b d7,46(a0)
-
- ; DO THE PORTAMENTO THING
- moveq #0,d1
- move.b 47(a0),d1 ;get portavalue
- beq.s a56d0 ;0=no portamento
- cmpi.b #$1f,d1
- bls.s portaup
- portadown:
- andi.w #$1f,d1
- neg.w d1
- portaup:
- sub.w d1,56(a0)
- a56d0:
- add.w 56(a0),d0
- o49e3e:
- cmpi.w #$0070,d0
- bhi.s nn1
- move.w #$0071,d0
- nn1:
- cmpi.w #$06b0,d0
- bls.s nn2
- move.w #$06b0,d0
- nn2:
- moveq #0,d1
- move.b 45(a0),d1
- rts
-
-
-
- pervol: dcb.b 16,0 ;Periods & Volumes temp. store
- respcnt: dc.w 0 ;Replay speed counter
- repspd: dc.w 0 ;Replay speed counter temp
- onoff: dc.w 0 ;Music on/off flag.
- firseq: dc.w 0 ;First sequence
- lasseq: dc.w 0 ;Last sequence
- audtemp: dc.w 0
- spdtemp: dc.w 0
-
- V1data: dcb.b 64,0 ;Voice 1 data area
- offset1: dcb.b 02,0 ;Is added to start of sound
- ssize1: dcb.b 02,0 ;Length of sound
- start1: dcb.b 06,0 ;Start of sound
-
- V2data: dcb.b 64,0 ;Voice 2 data area
- offset2: dcb.b 02,0
- ssize2: dcb.b 02,0
- start2: dcb.b 06,0
-
- V3data: dcb.b 64,0 ;Voice 3 data area
- offset3: dcb.b 02,0
- ssize3: dcb.b 02,0
- start3: dcb.b 06,0
-
- V4data: dcb.b 64,0 ;Voice 4 data area
- offset4: dcb.b 02,0
- ssize4: dcb.b 02,0
- start4: dcb.b 06,0
-
- o4a0c8: dc.l $00000000,$00100003,$00200006,$00300009
- SEQpoint: dc.l 0
- PATpoint: dc.l 0
- FRQpoint: dc.l 0
- VOLpoint: dc.l 0
-
-
- even
- SILENT: dc.w $0100,$0000,$0000,$00e1
-
- PERIODS: dc.w $06b0,$0650,$05f4,$05a0,$054c,$0500,$04b8,$0474
- dc.w $0434,$03f8,$03c0,$038a,$0358,$0328,$02fa,$02d0
- dc.w $02a6,$0280,$025c,$023a,$021a,$01fc,$01e0,$01c5
- dc.w $01ac,$0194,$017d,$0168,$0153,$0140,$012e,$011d
- dc.w $010d,$00fe,$00f0,$00e2,$00d6,$00ca,$00be,$00b4
- dc.w $00aa,$00a0,$0097,$008f,$0087,$007f,$0078,$0071
- dc.w $0071,$0071,$0071,$0071,$0071,$0071,$0071,$0071
- dc.w $0071,$0071,$0071,$0071,$0d60,$0ca0,$0be8,$0b40
- dc.w $0a98,$0a00,$0970,$08e8,$0868,$07f0,$0780,$0714
- dc.w $1ac0,$1940,$17d0,$1680,$1530,$1400,$12e0,$11d0
- dc.w $10d0,$0fe0,$0f00,$0e28
-
- SOUNDINFO:
- ;Offset.l , Sound-length.w , Start-offset.w , Repeat-length.w
-
- ;Reserved for samples
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- dc.w $0000,$0000, $0000,$0000, $0001
- ;Reserved for synth sounds
- dc.w $0000,$0000, $0010, $0000, $0010
- dc.w $0000,$0020, $0010, $0000, $0010
- dc.w $0000,$0040, $0010, $0000, $0010
- dc.w $0000,$0060, $0010, $0000, $0010
- dc.w $0000,$0080, $0010, $0000, $0010
- dc.w $0000,$00a0, $0010, $0000, $0010
- dc.w $0000,$00c0, $0010, $0000, $0010
- dc.w $0000,$00e0, $0010, $0000, $0010
- dc.w $0000,$0100, $0010, $0000, $0010
- dc.w $0000,$0120, $0010, $0000, $0010
- dc.w $0000,$0140, $0010, $0000, $0010
- dc.w $0000,$0160, $0010, $0000, $0010
- dc.w $0000,$0180, $0010, $0000, $0010
- dc.w $0000,$01a0, $0010, $0000, $0010
- dc.w $0000,$01c0, $0010, $0000, $0010
- dc.w $0000,$01e0, $0010, $0000, $0010
- dc.w $0000,$0200, $0010, $0000, $0010
- dc.w $0000,$0220, $0010, $0000, $0010
- dc.w $0000,$0240, $0010, $0000, $0010
- dc.w $0000,$0260, $0010, $0000, $0010
- dc.w $0000,$0280, $0010, $0000, $0010
- dc.w $0000,$02a0, $0010, $0000, $0010
- dc.w $0000,$02c0, $0010, $0000, $0010
- dc.w $0000,$02e0, $0010, $0000, $0010
- dc.w $0000,$0300, $0010, $0000, $0010
- dc.w $0000,$0320, $0010, $0000, $0010
- dc.w $0000,$0340, $0010, $0000, $0010
- dc.w $0000,$0360, $0010, $0000, $0010
- dc.w $0000,$0380, $0010, $0000, $0010
- dc.w $0000,$03a0, $0010, $0000, $0010
- dc.w $0000,$03c0, $0010, $0000, $0010
- dc.w $0000,$03e0, $0010, $0000, $0010
- dc.w $0000,$0400, $0008, $0000, $0008
- dc.w $0000,$0410, $0008, $0000, $0008
- dc.w $0000,$0420, $0008, $0000, $0008
- dc.w $0000,$0430, $0008, $0000, $0008
- dc.w $0000,$0440, $0008, $0000, $0008
- dc.w $0000,$0450, $0008, $0000, $0008
- dc.w $0000,$0460, $0008, $0000, $0008
- dc.w $0000,$0470, $0008, $0000, $0008
- dc.w $0000,$0480, $0010, $0000, $0010
- dc.w $0000,$04a0, $0008, $0000, $0008
- dc.w $0000,$04b0, $0010, $0000, $0010
- dc.w $0000,$04d0, $0010, $0000, $0010
- dc.w $0000,$04f0, $0008, $0000, $0008
- dc.w $0000,$0500, $0008, $0000, $0008
- dc.w $0000,$0510, $0018, $0000, $0018
-
-
- WAVEFORMS:
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $3f37,$2f27,$1f17,$0f07,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c037,$2f27,$1f17,$0f07,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$2f27,$1f17,$0f07,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b027,$1f17,$0f07,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$1f17,$0f07,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a017,$0f07,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$0f07,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9007,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$ff07,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$8007,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$8088,$0f17,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$8088,$9017,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$8088,$9098,$1f27,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$8088,$9098,$a027,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$8088,$9098,$a0a8,$2f37
- dc.w $c0c0,$d0d8,$e0e8,$f0f8,$00f8,$f0e8,$e0d8,$d0c8
- dc.w $c0b8,$b0a8,$a098,$9088,$8088,$9098,$a0a8,$b037
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $817f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$817f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$817f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$817f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$8181,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$8181,$817f,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$8181,$8181,$7f7f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$8181,$8181,$817f,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$7f7f,$7f7f
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$8181,$8181
- dc.w $8181,$8181,$8181,$8181,$8181,$8181,$817f,$7f7f
- dc.w $8080,$8080,$8080,$8080,$8080,$8080,$8080,$8080
- dc.w $8080,$8080,$8080,$8080,$8080,$8080,$8080,$7f7f
- dc.w $8080,$8080,$8080,$8080,$8080,$8080,$8080,$8080
- dc.w $8080,$8080,$8080,$8080,$8080,$8080,$8080,$807f
- dc.w $8080,$8080,$8080,$8080,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$8080,$8080,$807f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$8080,$8080,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$8080,$807f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$8080,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$807f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f,$7f7f
- dc.w $8080,$9098,$a0a8,$b0b8,$c0c8,$d0d8,$e0e8,$f0f8
- dc.w $0008,$1018,$2028,$3038,$4048,$5058,$6068,$707f
- dc.w $8080,$a0b0,$c0d0,$e0f0,$0010,$2030,$4050,$6070
- dc.w $4545,$797d,$7a77,$7066,$6158,$534d,$2c20,$1812
- dc.w $04db,$d3cd,$c6bc,$b5ae,$a8a3,$9d99,$938e,$8b8a
- dc.w $4545,$797d,$7a77,$7066,$5b4b,$4337,$2c20,$1812
- dc.w $04f8,$e8db,$cfc6,$beb0,$a8a4,$9e9a,$9594,$8d83
- dc.w $0000,$4060,$7f60,$4020,$00e0,$c0a0,$80a0,$c0e0
- dc.w $0000,$4060,$7f60,$4020,$00e0,$c0a0,$80a0,$c0e0
- dc.w $8080,$9098,$a0a8,$b0b8,$c0c8,$d0d8,$e0e8,$f0f8
- dc.w $0008,$1018,$2028,$3038,$4048,$5058,$6068,$707f
- dc.w $8080,$a0b0,$c0d0,$e0f0,$0010,$2030,$4050,$6070
-
- ***************************************************************
- ** End of Future Composer V1.3 replay routine. **
- ***************************************************************
-
- ***********************************************
- logo incbin df2:bitmaps/InnerCity.bmap
- piccy incbin df2:Bitmaps/Hifi.bmap
-
- include df2:include/hwequates.inc
- module incbin "df0:mod.razor1911"
-
- END
-